li .glyphicon {
	margin-right: 10px;
}

/* Highlighting rules for nav menu items */
li.link-active a,
li.link-active a:hover,
li.link-active a:focus {
	background-color: #4189C7;
	color: white;
}

/* Keep the nav menu independent of scrolling and on top of other items */
.main-nav {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1;
}

.navbar-header {
	width: 100%;
	height: 5vh;
}

.navbar {
	border-radius: 0px;
	border-width: 0px;
	height: 100%;
}

.navbar ul {
	float: none;
	height: calc(100vh - 50px);
	max-height: 95vh;
	overflow-x: hidden;
	overflow-y: auto;
	margin-top: 0px;
}

.navbar li {
	float: none;
	font-size: 15px;
	width: 100%;
}

.navbar-brand {
	text-align: center;
}

.navbar-collapse {
	max-width: 100%;
	border-top: 1px solid #444;
}

@media (max-width: 767px) {
	.navbar-toggle {
		display: block !important;
	}

	.navbar-collapse.collapsed {
		display: none;
	}

	.navbar-collapse.collapsed.in {
		display: block;
	}

	.navbar-collapse {
		box-shadow: none;
		padding-left: 15px;
		padding-right: 15px;
	}
}

@media (min-width: 768px) {
	/* On small screens, convert the nav menu to a vertical sidebar */
	.navbar-collapse.collapsed {
		display: block !important;
		height: auto !important;
		padding-bottom: 0;
	}

	.main-nav {
		height: 100%;
		width: calc(25% - 20px);
	}

	.navbar-header {
		float: none;
	}

	.navbar-collapse {
		padding: 0px;
	}

	.navbar a {
		/* If a menu item's text is too long, truncate it */
		width: 100%;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.navbar li a {
		padding: 10px 16px;
	}
}
